// cloudfunctions/loginUser/index.js
exports.main = async (event, context) => {
  const db = uniCloud.database();
  const usersCollection = db.collection('Accounts'); // 和注册时的表名保持一致
  
  try {
    // 1. 获取前端传递的用户名和密码
    const { name, password } = event;
    
    // 2. 根据用户名查询用户信息
    const userRes = await usersCollection.where({
      name: name // 匹配注册时存储的name字段
    }).get();
    
    // 3. 校验用户是否存在
    if (userRes.data.length === 0) {
      return {
        code: -1,
        msg: '用户名不存在，请先注册'
      };
    }
    
    // 4. 校验密码是否正确（和注册时存储的密码对比）
    const userInfo = userRes.data[0];
    if (userInfo.password !== password) {
      return {
        code: -1,
        msg: '密码错误，请重新输入'
      };
    }
    
    // 5. 登录成功：返回用户信息（不含密码）
    const { password: _, ...userData } = userInfo; // 剔除密码字段
    return {
      code: 0,
      msg: '登录成功',
      userInfo: userData // 包含name/phone/email/address等注册信息
    };
  } catch (err) {
    console.error('登录校验失败：', err);
    return {
      code: -2,
      msg: '服务器错误，请稍后重试'
    };
  }
};